<?php

/*
 * Clément GUILLERMIN 2011-2012
 * 
 * Classe basée sur le design pattern Singleton
 * Retourne un objet PDO unique pour s'assurer de la cohérence des requêtes vers la base de données.
 * 
 * Utilisation:
 * 
 * $db = DBconnect::GetInstance();	// Récupère l'instance de connexion
 * $pdo = $db->GetPDO();	// Fournit l'instance unique de l'objet PDO
 * $requete=$pdo->prepare('INSERT INTO ...');
 */

class DBconnect
{
	private $m_PDOInstance = null;
	private static $m_instance = null;

	private function __construct()
	{
		$server = "mysql";
		$host = "localhost";
		$base = "dansin";
		$user = "profuser";
		$pass = "profpass";

		try {
			$this->m_PDOInstance = new PDO("$server:host=$host;dbname=$base",$user, $pass);
		}
		catch(exception $e)
		{
			echo("ERREUR : ".$e);
		}
	}

	public static function GetInstance()
	{
		if(is_null(self::$m_instance))
		{
			self::$m_instance = new DBconnect();
		}

		return self::$m_instance;
	}

	public function GetPDO()
	{
		return $this->m_PDOInstance;
	}
}
?>